#define _XOPEN_SOURCE
#include <unistd.h>
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
    const char *stored_encrypted = "$6$saltstring$c9DrO0FRd0h9VHLGHf6/0EVfo5xZ8MFM48A9CO60OgYg2G/O/wPNJd1BzLIkPZSCAlQC2y70PTk3EAJpT7dE8."; // 存储的加密密码

    // 使用存储的加密密码中的salt来加密输入的密码
    char *encrypted_input = crypt(argv[1], stored_encrypted);
    if (encrypted_input == NULL)
    {
        perror("crypt");
        return 1;
    }

    // 比较加密后的输入密码和存储的加密密码
    if (strcmp(encrypted_input, stored_encrypted) == 0)
    {
        printf("密码验证成功。\n");
    } else {
        printf("密码验证失败。\n");
    }

    return 0;
}
